1
區域範圍與自動物件生命週期
AI037Lesson 9
00:00

在一個 C++ 程式宏大的劇場中,物件就像演員一樣。有些會全程留在舞台上,但大多數—— 區域物件——是只出現在單一場景中、瞬間消失的短暫存在。本課建立了一個基本區別:物件的 可見性 (範圍)與其 存在性 (生命週期)之間。

1. 語法範圍與執行生命週期

名稱的 範圍 是編譯時期的屬性:指程式碼中名稱可被使用的區域。相反地, 生命週期 是執行時期的屬性:指物件佔據實際記憶體位址的時間長度。

原始碼(範圍){int i = 42;cout << i;}記憶體堆疊(生命週期)i: 42其他幀建立區塊結束 / 移除

2. 自動物件

僅在區塊執行期間存在的物件稱為 自動物件。當控制流程經過其定義時(int n = 0;),並在遇到閉合括號(})時被銷毀。參數實質上是透過引數初始化的區域變數。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>